package com.grapro.service;

import java.util.List;
import java.util.Map;

public interface UserService {
    boolean loginCheck(int id, String password);
    Map<String, Object> getUserInfo(int id);
    boolean updatePassword(int id, String newPassword1, String oldPassword);
    boolean addEmployee(Map<String, String[]> parameterMap);

    /**
     * 添加当前数据到打卡时间中
     *
     * @param time 当前时间
     * @return 存入成功返回true，否则反返回false
     */
    boolean clockIn(String time, String username);

    /**
     *  添加下班时间
     * @param time 打卡时间
     * @param username 用户名
     * @return 添加成功返回true，否则返回false
     */
    boolean clockOut(String time, String username);
    /**
     * 判断是否已经打过卡
     *
     * @param time 打卡日期
     * @return 未打卡返回true，否则返回false
     */
    boolean isHaveChecked(String time, String username);
    /**
     * 添加用户的请假申请
     *
     * @param parameterMap 用户请假申请数据
     * @param username 用户名
     * @return 添加成功返回true，否则返回false
     */
    boolean insertLO(Map<String, String[]> parameterMap, String username);

    /**
     * 获取所有申请加班请假人的资料
     *
     * @param leaveOrOvertimeStatus 对应状态
     * @return 返回所人的数据的list集合其中
     */
    List<Map<String, Object>> LeaveAndOvertime(int leaveOrOvertimeStatus);
}
